#ifndef PCG_H
#define PCG_H

#include <QObject>
#include <QVector>

class PCG : public QObject
{
    Q_OBJECT
public:
    explicit PCG(QObject *parent = 0);
    // add point (x, y)
    void addPoint(double x, double y);
    // return address of vector t
    QVector<double> *getX();
    // return address of vector s
    QVector<double> *getY();
    void setBeginnings(QVector<int> &beg);
    // get positions of S1 and S2
    int getMinimalPeriod();
    QVector<double> *getS1();
    QVector<double> *getS2();
    // number of periods
    int numberOfPeriods();

private:
    // time and signal
    QVector<double> t, s;
    QVector<int> beginnings;
    QVector<double> s1, s2;

signals:

public slots:

};

#endif // PCG_H
